package pack

/*******************************************************************************
Copyright:cloud
Author:cloudapex@126.com
Version:2.0
Date:2018-03-25
Description:协议包的最终文件
	1 默认构造
	2 序列化/反序列化
	3 自动注册
注1 !!!文件自动生成，不要手动修改!!!
*******************************************************************************/
import (
	"Ghost/ntk"
	proto "github.com/golang/protobuf/proto"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal

const (
	MT_TEST_BEGIN = iota + 100
	MT_SERVER_PING
	MT_HAND_SHAKE_Q
	MT_HAND_SHAKE_A
)

func init() {
	ntk.RegistMessage(MT_SERVER_PING, makeMsgServerPing, "MT_SERVER_PING")
	ntk.RegistMessage(MT_HAND_SHAKE_Q, makeMsgHandShakeQ, "MT_HAND_SHAKE_Q")
	ntk.RegistMessage(MT_HAND_SHAKE_A, makeMsgHandShakeA, "MT_HAND_SHAKE_A")
}

type ELoginErr int32

const (
	ELoginErr_TheType    ELoginErr = 0
	ELoginErr_ReLogin    ELoginErr = 1
	ELoginErr_AccName    ELoginErr = 2
	ELoginErr_Password   ELoginErr = 3
	ELoginErr_Conflict   ELoginErr = 4
	ELoginErr_Blocked    ELoginErr = 5
	ELoginErr_ContrlFull ELoginErr = 6
	ELoginErr_MasterFull ELoginErr = 7
	ELoginErr_OutTime    ELoginErr = 8
	ELoginErr_Deleted    ELoginErr = 9
	ELoginErr_NoGate     ELoginErr = 10
	ELoginErr_NoEntry    ELoginErr = 11
	ELoginErr_NotReady   ELoginErr = 12
)

var ELoginErr_name = map[int32]string{
	0:  "TheType",
	1:  "ReLogin",
	2:  "AccName",
	3:  "Password",
	4:  "Conflict",
	5:  "Blocked",
	6:  "ContrlFull",
	7:  "MasterFull",
	8:  "OutTime",
	9:  "Deleted",
	10: "NoGate",
	11: "NoEntry",
	12: "NotReady",
}
var ELoginErr_value = map[string]int32{
	"TheType":    0,
	"ReLogin":    1,
	"AccName":    2,
	"Password":   3,
	"Conflict":   4,
	"Blocked":    5,
	"ContrlFull": 6,
	"MasterFull": 7,
	"OutTime":    8,
	"Deleted":    9,
	"NoGate":     10,
	"NoEntry":    11,
	"NotReady":   12,
}

func (x ELoginErr) String() string {
	return proto.EnumName(ELoginErr_name, int32(x))
}

// 用户退出类型
type EExitType int32

const (
	EExitType_NormalExit      EExitType = 0
	EExitType_SwitchExit      EExitType = 1
	EExitType_SwitchStage     EExitType = 2
	EExitType_NetOffline      EExitType = 3
	EExitType_BeKickOut       EExitType = 4
	EExitType_BeKickConflict  EExitType = 5
	EExitType_BeKickDisGate   EExitType = 6
	EExitType_BeKickSystem    EExitType = 7
	EExitType_BeKickException EExitType = 8
)

var EExitType_name = map[int32]string{
	0: "NormalExit",
	1: "SwitchExit",
	2: "SwitchStage",
	3: "NetOffline",
	4: "BeKickOut",
	5: "BeKickConflict",
	6: "BeKickDisGate",
	7: "BeKickSystem",
	8: "BeKickException",
}
var EExitType_value = map[string]int32{
	"NormalExit":      0,
	"SwitchExit":      1,
	"SwitchStage":     2,
	"NetOffline":      3,
	"BeKickOut":       4,
	"BeKickConflict":  5,
	"BeKickDisGate":   6,
	"BeKickSystem":    7,
	"BeKickException": 8,
}

func (x EExitType) String() string {
	return proto.EnumName(EExitType_name, int32(x))
}

// 切换服务时校验结果
type EVerifyGate int32

const (
	EVerifyGate_EnterLobby  EVerifyGate = 0
	EVerifyGate_EnterScene  EVerifyGate = 1
	EVerifyGate_ReturnLobby EVerifyGate = 2
	EVerifyGate_SwitchLobby EVerifyGate = 3
	EVerifyGate_SwitchScene EVerifyGate = 4
	EVerifyGate_VGFaild     EVerifyGate = 5
)

var EVerifyGate_name = map[int32]string{
	0: "EnterLobby",
	1: "EnterScene",
	2: "ReturnLobby",
	3: "SwitchLobby",
	4: "SwitchScene",
	5: "VGFaild",
}
var EVerifyGate_value = map[string]int32{
	"EnterLobby":  0,
	"EnterScene":  1,
	"ReturnLobby": 2,
	"SwitchLobby": 3,
	"SwitchScene": 4,
	"VGFaild":     5,
}

func (x EVerifyGate) String() string {
	return proto.EnumName(EVerifyGate_name, int32(x))
}

// 通用错误回应
type ECommonErr int32

const (
	ECommonErr_Default   ECommonErr = 0
	ECommonErr_Unknow    ECommonErr = 100
	ECommonErr_Exception ECommonErr = 101
)

var ECommonErr_name = map[int32]string{
	0:   "Default",
	100: "Unknow",
	101: "Exception",
}
var ECommonErr_value = map[string]int32{
	"Default":   0,
	"Unknow":    100,
	"Exception": 101,
}

func (x ECommonErr) String() string {
	return proto.EnumName(ECommonErr_name, int32(x))
}

type UtilStructAll_Humour int32

const (
	UtilStructAll_UNKNOWN     UtilStructAll_Humour = 0
	UtilStructAll_PUNS        UtilStructAll_Humour = 1
	UtilStructAll_SLAPSTICK   UtilStructAll_Humour = 2
	UtilStructAll_BILL_BAILEY UtilStructAll_Humour = 3
)

var UtilStructAll_Humour_name = map[int32]string{
	0: "UNKNOWN",
	1: "PUNS",
	2: "SLAPSTICK",
	3: "BILL_BAILEY",
}
var UtilStructAll_Humour_value = map[string]int32{
	"UNKNOWN":     0,
	"PUNS":        1,
	"SLAPSTICK":   2,
	"BILL_BAILEY": 3,
}

func (x UtilStructAll_Humour) String() string {
	return proto.EnumName(UtilStructAll_Humour_name, int32(x))
}

type EHandShakeAErr int32

const (
	EHandShakeAErrType  EHandShakeAErr = 0
	EHandShakeARepeated EHandShakeAErr = 1
	EHandShakeAPermit   EHandShakeAErr = 2
	EHandShakeAShakeKey EHandShakeAErr = 3
	EHandShakeAParams   EHandShakeAErr = 4
	EHandShakeAIPAddr   EHandShakeAErr = 5
	EHandShakeASupport  EHandShakeAErr = 6
)

var EHandShakeAErr_name = map[int32]string{
	0: "ErrType",
	1: "Repeated",
	2: "Permit",
	3: "ShakeKey",
	4: "Params",
	5: "IPAddr",
	6: "Support",
}
var EHandShakeAErr_value = map[string]int32{
	"ErrType":  0,
	"Repeated": 1,
	"Permit":   2,
	"ShakeKey": 3,
	"Params":   4,
	"IPAddr":   5,
	"Support":  6,
}

func (x EHandShakeAErr) String() string {
	return proto.EnumName(EHandShakeAErr_name, int32(x))
}

type SServerInfo struct {
	ServerType int32 `protobuf:"varint,1,opt,name=ServerType,json=serverType" json:"ServerType,omitempty"`
	ServerId   int32 `protobuf:"varint,2,opt,name=ServerId,json=serverId" json:"ServerId,omitempty"`
}

func (m *SServerInfo) Reset()         { *m = SServerInfo{} }
func (m *SServerInfo) String() string { return proto.CompactTextString(m) }
func (*SServerInfo) ProtoMessage()    {}

type SLoginInfo struct {
	IPAddr      string `protobuf:"bytes,1,opt,name=IPAddr,json=iPAddr" json:"IPAddr,omitempty"`
	AccountId   uint64 `protobuf:"varint,2,opt,name=AccountId,json=accountId" json:"AccountId,omitempty"`
	SessionId   uint64 `protobuf:"varint,3,opt,name=SessionId,json=sessionId" json:"SessionId,omitempty"`
	AccountName string `protobuf:"bytes,4,opt,name=AccountName,json=accountName" json:"AccountName,omitempty"`
}

func (m *SLoginInfo) Reset()         { *m = SLoginInfo{} }
func (m *SLoginInfo) String() string { return proto.CompactTextString(m) }
func (*SLoginInfo) ProtoMessage()    {}

type SNetNode struct {
	ServerId   int32  `protobuf:"varint,1,opt,name=ServerId,json=serverId" json:"ServerId,omitempty"`
	ServerType int32  `protobuf:"varint,2,opt,name=ServerType,json=serverType" json:"ServerType,omitempty"`
	ServerName string `protobuf:"bytes,3,opt,name=ServerName,json=serverName" json:"ServerName,omitempty"`
	ListenIP   string `protobuf:"bytes,4,opt,name=ListenIP,json=listenIP" json:"ListenIP,omitempty"`
	ListenPort int32  `protobuf:"varint,5,opt,name=ListenPort,json=listenPort" json:"ListenPort,omitempty"`
}

func (m *SNetNode) Reset()         { *m = SNetNode{} }
func (m *SNetNode) String() string { return proto.CompactTextString(m) }
func (*SNetNode) ProtoMessage()    {}

type SBurthenInfo struct {
	RoleCount int32 `protobuf:"varint,1,opt,name=RoleCount,json=roleCount" json:"RoleCount,omitempty"`
	MaxClient int32 `protobuf:"varint,2,opt,name=MaxClient,json=maxClient" json:"MaxClient,omitempty"`
}

func (m *SBurthenInfo) Reset()         { *m = SBurthenInfo{} }
func (m *SBurthenInfo) String() string { return proto.CompactTextString(m) }
func (*SBurthenInfo) ProtoMessage()    {}

type SubStruct struct {
	Lang int32 `protobuf:"varint,1,opt,name=lang" json:"lang,omitempty"`
}

func (m *SubStruct) Reset()         { *m = SubStruct{} }
func (m *SubStruct) String() string { return proto.CompactTextString(m) }
func (*SubStruct) ProtoMessage()    {}

type UtilStructAll struct {
	Name         string                     `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	Hilarity     UtilStructAll_Humour       `protobuf:"varint,2,opt,name=hilarity,enum=pack.UtilStructAll_Humour" json:"hilarity,omitempty"`
	HeightInCm   uint32                     `protobuf:"varint,3,opt,name=height_in_cm,json=heightInCm" json:"height_in_cm,omitempty"`
	Data         []byte                     `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"`
	ResultCount  int64                      `protobuf:"varint,7,opt,name=result_count,json=resultCount" json:"result_count,omitempty"`
	TrueScotsman bool                       `protobuf:"varint,8,opt,name=true_scotsman,json=trueScotsman" json:"true_scotsman,omitempty"`
	Score        float32                    `protobuf:"fixed32,9,opt,name=score" json:"score,omitempty"`
	Key          []uint64                   `protobuf:"varint,5,rep,packed,name=key" json:"key,omitempty"`
	Nested       *SubStruct                 `protobuf:"bytes,6,opt,name=nested" json:"nested,omitempty"`
	Inter        *UtilStructAll_InterStruct `protobuf:"bytes,11,opt,name=Inter,json=inter" json:"Inter,omitempty"`
	Terrain      map[string]*SubStruct      `protobuf:"bytes,10,rep,name=terrain" json:"terrain,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	Head         *ntk.MsgHead               `protobuf:"bytes,12,opt,name=Head,json=head" json:"Head,omitempty"`
}

func (m *UtilStructAll) Reset()         { *m = UtilStructAll{} }
func (m *UtilStructAll) String() string { return proto.CompactTextString(m) }
func (*UtilStructAll) ProtoMessage()    {}

type UtilStructAll_InterStruct struct {
	Lang int32 `protobuf:"varint,1,opt,name=lang" json:"lang,omitempty"`
}

func (m *UtilStructAll_InterStruct) Reset()         { *m = UtilStructAll_InterStruct{} }
func (m *UtilStructAll_InterStruct) String() string { return proto.CompactTextString(m) }
func (*UtilStructAll_InterStruct) ProtoMessage()    {}

type MsgServerPing struct {
	Head *ntk.MsgHead `protobuf:"bytes,1,opt,name=Head,json=head" json:"Head,omitempty"`
	Time int64        `protobuf:"varint,2,opt,name=Time,json=time" json:"Time,omitempty"`
}

func (m *MsgServerPing) Reset()                    { *m = MsgServerPing{} }
func (m *MsgServerPing) String() string            { return proto.CompactTextString(m) }
func (*MsgServerPing) ProtoMessage()               {}
func (m *MsgServerPing) GetHead() *ntk.MsgHead     { return m.Head }
func (m *MsgServerPing) SetHead(head *ntk.MsgHead) { m.Head = head }
func MakeMsgServerPing() *MsgServerPing {
	return &MsgServerPing{Head: &ntk.MsgHead{Types: uint32(MT_SERVER_PING << 16)}}
}
func makeMsgServerPing() ntk.IMsger { return MakeMsgServerPing() }

type MsgHandShakeQ struct {
	Head    *ntk.MsgHead `protobuf:"bytes,1,opt,name=Head,json=head" json:"Head,omitempty"`
	CliInfo *SServerInfo `protobuf:"bytes,2,opt,name=CliInfo,json=cliInfo" json:"CliInfo,omitempty"`
	CliName string       `protobuf:"bytes,3,opt,name=CliName,json=cliName" json:"CliName,omitempty"`
	ShakKey string       `protobuf:"bytes,4,opt,name=ShakKey,json=shakKey" json:"ShakKey,omitempty"`
	HasData bool         `protobuf:"varint,5,opt,name=HasData,json=hasData" json:"HasData,omitempty"`
}

func (m *MsgHandShakeQ) Reset()                    { *m = MsgHandShakeQ{} }
func (m *MsgHandShakeQ) String() string            { return proto.CompactTextString(m) }
func (*MsgHandShakeQ) ProtoMessage()               {}
func (m *MsgHandShakeQ) GetHead() *ntk.MsgHead     { return m.Head }
func (m *MsgHandShakeQ) SetHead(head *ntk.MsgHead) { m.Head = head }
func MakeMsgHandShakeQ() *MsgHandShakeQ {
	return &MsgHandShakeQ{Head: &ntk.MsgHead{Types: uint32(MT_HAND_SHAKE_Q << 16)}}
}
func makeMsgHandShakeQ() ntk.IMsger { return MakeMsgHandShakeQ() }

type MsgHandShakeA struct {
	Head *ntk.MsgHead        `protobuf:"bytes,1,opt,name=Head,json=head" json:"Head,omitempty"`
	ERet *ntk.ErrRet         `protobuf:"bytes,2,opt,name=ERet,json=eRet" json:"ERet,omitempty"`
	DRet *MsgHandShakeA_Data `protobuf:"bytes,3,opt,name=DRet,json=dRet" json:"DRet,omitempty"`
}

func (m *MsgHandShakeA) Reset()                    { *m = MsgHandShakeA{} }
func (m *MsgHandShakeA) String() string            { return proto.CompactTextString(m) }
func (*MsgHandShakeA) ProtoMessage()               {}
func (m *MsgHandShakeA) GetHead() *ntk.MsgHead     { return m.Head }
func (m *MsgHandShakeA) SetHead(head *ntk.MsgHead) { m.Head = head }
func (m *MsgHandShakeA) SetErrt(er *ntk.ErrRet)    { m.ERet = er }

func MakeMsgHandShakeA() *MsgHandShakeA {
	return &MsgHandShakeA{Head: &ntk.MsgHead{Types: uint32(MT_HAND_SHAKE_A << 16)}}
}
func makeMsgHandShakeA() ntk.IMsger { return MakeMsgHandShakeA() }

type MsgHandShakeA_Data struct {
	ServerInfo *SServerInfo `protobuf:"bytes,1,opt,name=ServerInfo,json=serverInfo" json:"ServerInfo,omitempty"`
	ServerName string       `protobuf:"bytes,2,opt,name=ServerName,json=serverName" json:"ServerName,omitempty"`
	ListenPort int32        `protobuf:"varint,3,opt,name=ListenPort,json=listenPort" json:"ListenPort,omitempty"`
}

func (m *MsgHandShakeA_Data) Reset()         { *m = MsgHandShakeA_Data{} }
func (m *MsgHandShakeA_Data) String() string { return proto.CompactTextString(m) }
func (*MsgHandShakeA_Data) ProtoMessage()    {}
